POV-Ray : Newsgroups : povray.general : fu*ing photons and memory managment : fu*ing photons and memory managment Server Time
3 Aug 2024 12:20:32 EDT (-0400)
  fu*ing photons and memory managment  
From: Rafal 'Raf256' Maj
Date: 23 Feb 2004 16:59:34
Message: <Xns9498E9DB12C0Braf256com@203.29.75.35>
It realy is irritating in PovRay 3.6 how it can hang entire system (in 3.5 
also, but in 3.6 this effect is stronger).

Just create a simpel scene complicated enought that it will want to use say 
1.5 GB memory in shooting photons pahse.

Even on render priority low, it will cause most machines to hang, i.e. 
my Athlon 2200 512 RAM WinXP was hanign for about 15 minutes before 
responding to alt+f4 and other keys to finaly kill povray application.

In this time no other process could get CPU time, so all internets 
connections broke (because server/clients programs was also hanging) and 
even after each move of mouse pointer user has to wait 15-20 seconds for 
reaction on (GeForce 4 Fx 128 ram card).


Now for some constructive critics / sugestions,
- pov 3.5 did better job with priority settings and was more nice with 
sharing thime with other processes

- I suggest adding an ini options:
  +meml 128  memory limit in MB, render will stop with an error if it will   
    try to alocate more memory  
  +old CPU cycle (80%, 90%) - I suggest it should also be an ini option
  +old priority - it should be also an ini option

- new duty cycle / priority settings - for memory, i.e. that PovRay will 
delay for i.e. 1 second every second of memory swapping. 
Explanation - if povray will detect that each memory operations took to 
much time, say simply allocation of 4 mb buffer tooks almost 1 second, it 
will assume that it is causing heavy swapping in system, and will sleep for 
several seconds if told to do so, to give user a change to kill povray


- I think that photons related code does not check if STOP button was 
pressed (or it does it rearly)


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.